package com.yy.permissions_general.module.system.roleAuth.service;

import com.yy.permissions_general.module.system.roleAuth.entity.RoleAuth;
import com.baomidou.mybatisplus.extension.service.IService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yy.permissions_general.module.system.roleAuth.vo.RoleAuthVo;

import java.util.List;

/**
 * <p>
 * 角色权限关联 服务类
 * </p>
 *
 * @author YY
 * @since 2021-10-07
 */
public interface RoleAuthService extends IService<RoleAuth> {

    /**
    * 分页查询列表
    * @param roleAuth
    * @return
    */
    Page<RoleAuth> selectPageList(RoleAuth roleAuth, int limit, int page);

    /**
    * 删除数据
    * @param roleId
    * @return
    */
    int deleteByRoleId(String roleId);

    /**
    * 删除数据
    * @param id
    * @return
    */
    int deleteById(Integer id);

    /**
    * 批量删除
    * @param ids
    * @return
    */
    int deleteBatch(List<Long> ids);

    /**
     * 根据角色ID获取权限
     * @param roleId 角色ID
     * @return
     */
    List<RoleAuthVo> getRoleAuthTree(Integer roleId);
}

